home *** CD-ROM | disk | FTP | other *** search
- /* ------------------------------------------------------------------------------
- FILENAME
- OldAPIMessageIntf.h
-
- DESCRIPTION
- This module contains contants and types which are specifically used by the
- OldAPIMessageIntf.c file. That file implements the ImageWriter LQ's old
- API messages.
-
- COPYRIGHT
- Copyright Apple Computer, Inc. 1992-1994
- All rights reserved.
-
- 12/20/93 - dmh - Sync'd with the shipping 1.0b3 GX driver.
- 8/28/94 - dmh - Sync'd with the shipping 1.0.1 GX driver.
-
- -------------------------------------------------------------------------------- */
-
- #ifndef __OLDAPIMESSAGEINTF__
- #define __OLDAPIMESSAGEINTF__
-
-
- /*********************************************************************************
- * CONSTANTS *
- *********************************************************************************/
-
- // Miscellaneous constants
- enum
- {
- kMysticPaperFract = 120, // Paper sizes in PREC 3 are expressed as multiples of 120
- kLQRefNum = 5, // Refnum in high byte of wDev and PrintX[0] fields
-
- oldIWLQPrintRecordVersion = 1, // This is the print record version supported by the last non-QuickDraw GX based ImageWriter LQ driver
-
- kPlaten15 = 27, // platen width in half-inches
- kPlaten8 = 16, // platen width in half-inches
- lScale = 0x00018000, // Handmade FIXED POINT scaling value of 1.5
-
- scanTop2Bottom = 0, // Scan page top to bottom selector
- scanLeft2Right = 2, // Scan page left to right selector
-
- draft = 0, // Indicates draft printing
- spool = 1, // Indicates spooled printing
-
- tray1 = 1, // Indicates tray 1 selected
- tray2 = 2, // Indicates tray 2 selected
- tray3 = 3, // Indicates tray 3 selected
-
- oldPRECAutoFeed = 1, // Old auto-feed setting
- oldPRECManualFeed = 0 // Old manual-feed setting
- };
-
- // Useful bit numbers in the wDev and PrintX[1] fields of the print record
- enum
- {
- kHighResBit = (1 << 0), // bit0
- kPortraitBit = (1 << 1), // bit1
- kBiDirBit = (1 << 2), // bit2
- k66PercentReducBit = (1 << 3), // bit3
- kScrollBit = (1 << 4), // bit4
- kResSetBit = (1 << 5), // bit5
- kDraftBit = (1 << 6), // bit6
- k33PercentReducBit = (1 << 7) // bit7
- };
-
- // Constants for setting the HeadMotion Job collection item values
- enum
- {
- doBidirectional = 0, // Do bidirectional motion
- doUnidirectional = 1 // Do unidirectional motion
- };
-
-
- /*********************************************************************************
- * TYPES *
- *********************************************************************************/
-
- // HeadMotionJobItem - Structure of job collection item indicating the head motion setting
-
- typedef struct
- {
- char direction; // true if head motion should be unidirectional; false otherwise
- } HeadMotionJobItem;
-
-
- // TraySettingsJobItem - Structure of job collection item indicating the selected tray settings
-
- typedef struct
- {
- short firstPageFromTray; // index (starting at tray1) of tray to use for first page of document
- short remainingFromTray; // index of tray to use for all remaining pages of the document
- } TraySettingsJobItem;
-
-
- /*********************************************************************************
- * DEFINES *
- *********************************************************************************/
-
- // TestBit - for testing a masked bit
-
- #define TestBit(i, bit) (((i) & (bit)) == (bit))
-
-
- /*********************************************************************************
- * FORWARD DECLARATIONS *
- *********************************************************************************/
-
- OSErr SD_PrValidate(THPrint hPrint, Boolean *wasChanged);
- OSErr SD_ConvertPrintRecordTo(THPrint hPrint);
- OSErr SD_ConvertPrintRecordFrom(THPrint hPrint);
- OSErr SD_PrintRecordToJob(THPrint hPrint, gxJob theJob);
-
- #endif __OLDAPIMESSAGEINTF__